package cn.iocoder.yudao.module.system.convert.userRole;

import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.system.api.userRole.dto.UserRoleDTO;
import cn.iocoder.yudao.module.system.controller.admin.userRole.vo.UserRoleCreateReqVO;
import cn.iocoder.yudao.module.system.controller.admin.userRole.vo.UserRoleExcelVO;
import cn.iocoder.yudao.module.system.controller.admin.userRole.vo.UserRoleRespVO;
import cn.iocoder.yudao.module.system.controller.admin.userRole.vo.UserRoleUpdateReqVO;
import cn.iocoder.yudao.module.system.dal.dataobject.permission.UserRoleDO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

import java.util.List;

/**
 * 用户和角色关联 Convert
 *
 * @author 谭万全
 */
@Mapper
public interface UserRoleConvert {

    UserRoleConvert INSTANCE = Mappers.getMapper(UserRoleConvert.class);

    UserRoleDO convert(UserRoleCreateReqVO bean);

    UserRoleDO convert(UserRoleUpdateReqVO bean);

    UserRoleRespVO convert(UserRoleDO bean);
    List<UserRoleDTO> convert1(List<UserRoleDO> bean);
    List<UserRoleRespVO> convertList(List<UserRoleDO> list);

    PageResult<UserRoleRespVO> convertPage(PageResult<UserRoleDO> page);

    List<UserRoleExcelVO> convertList02(List<UserRoleDO> list);

}
